﻿using System;
using System.Collections.Generic;

namespace SharpSqlAnalyzer.nodes.mdx
{
	// Token: 0x020003EA RID: 1002
	public class TMdxNameSegment : TParseTreeNode, IMdxIdentifierSegment
	{
		// Token: 0x060027B5 RID: 10165 RVA: 0x0033BD20 File Offset: 0x00339F20
		public override void init(object name, object quoting)
		{
			this.name = ((TSourceToken)name).ToString();
			this.quoting = (EMdxQuoting)quoting;
			if (name == null)
			{
				throw new NullReferenceException();
			}
			if (!quoting.Equals(EMdxQuoting.QUOTED) && !quoting.Equals(EMdxQuoting.UNQUOTED))
			{
				throw new ArgumentException();
			}
			base.startToken = (TSourceToken)name;
			base.endToken = (TSourceToken)name;
		}

		// Token: 0x060027B6 RID: 10166 RVA: 0x0033BD8D File Offset: 0x00339F8D
		public override void init(object name)
		{
			this.init(name, EMdxQuoting.QUOTED);
		}

		// Token: 0x170008EB RID: 2283
		// (get) Token: 0x060027B7 RID: 10167 RVA: 0x0033BD9C File Offset: 0x00339F9C
		public virtual string Name
		{
			get
			{
				return this.name;
			}
		}

		// Token: 0x170008EC RID: 2284
		// (get) Token: 0x060027B8 RID: 10168 RVA: 0x0033BDA4 File Offset: 0x00339FA4
		public virtual EMdxQuoting Quoting
		{
			get
			{
				return this.quoting;
			}
		}

		// Token: 0x170008ED RID: 2285
		// (get) Token: 0x060027B9 RID: 10169 RVA: 0x0033BDAC File Offset: 0x00339FAC
		public virtual List<TMdxNameSegment> KeyParts
		{
			get
			{
				return null;
			}
		}

		// Token: 0x04001DD7 RID: 7639
		internal string name;

		// Token: 0x04001DD8 RID: 7640
		internal EMdxQuoting quoting;
	}
}
